MongoDB Atlasで3.4アップグレードを試したら一瞬で完了した
こんにちは、菊池です。
11/29にMongoDBの最新メジャーバージョンであるVer.3.4がリリースされました。
というわけで早速、MongoDBのマネージドサービス、MongoDB Atlasを使ってVer. 3.2からVer.3.4へアップグレードをしてみました。
アップグレード
MongoDB Atlasのアップグレード作業は、コンソール画面から数クリックで、非常に簡単に実施できます。
まずは作業前のバージョンを確認しておきます。3.2系最新の、Ver.3.2.11で稼働しています。
Cluster0-shard-0:PRIMARY> db.version() 3.2.11 Cluster0-shard-0:PRIMARY>
コンソールのクラスタ管理画面で、CONFIGURATIONを選択します。
MongoDB Versionの項目で、Change versionを選択。
MongoDB 3.4 with WiredTigerが選択可能になっています。
MongoDB 3.4 with WiredTigerを選択。アップグレード後には前バージョンへのダウングレードできない旨の警告が表示されます。CONFIRM & DEPLOYを選択することでアップグレードが実行されます。
変更がデプロイされている旨の表示が出ますが、すぐに消えました。
接続していたシェルのセッションが切断されますので、再接続してみたところ、すでにVer. 3.4.0にアップグレードされていました!
$ mongo "mongodb://cluster0-shard-00-00-b1mko.mongodb.net:27017,cluster0-shard-00-01-b1mko.mongodb.net:27017,cluster0-shard-00-02-b1mko.mongodb.net:27017/admin?replicaSet=Cluster0-shard-0" --ssl --username master --password MongoDB shell version v3.4.0 Enter password: connecting to: mongodb://cluster0-shard-00-00-b1mko.mongodb.net:27017,cluster0-shard-00-01-b1mko.mongodb.net:27017,cluster0-shard-00-02-b1mko.mongodb.net:27017/admin?replicaSet=Cluster0-shard-0 2016-12-10T09:28:55.656+0000 I NETWORK [main] Starting new replica set monitor for Cluster0-shard-0/cluster0-shard-00-00-b1mko.mongodb.net:27017,cluster0-shard-00-01-b1mko.mongodb.net:27017,cluster0-shard-00-02-b1mko.mongodb.net:27017 MongoDB server version: 3.4.0 Cluster0-shard-0:PRIMARY> Cluster0-shard-0:PRIMARY> db.version() 3.4.0 Cluster0-shard-0:PRIMARY>
Atlasのコンソールでログを確認すると、以下のようになっています。
なんと操作を実行してから、アップグレード -> 再起動 -> Primaryの選出まで、わずか6秒で完了しています。再起動によりセッションの切断はあるものの、すぐに再接続可能な状態に復帰していることがわかります。
まとめ
いかがでしょうか。
MongoDBのマネージドサービス、MongoDB Atlasを使って、最新のVer.3.4へのアップグレードを試してみました。操作が簡単なだけでなく、ほぼ一瞬でアップグレードが完了しました。通常、データベース環境のメジャーアップグレードでは、かなりの作業と時間が必要になるものですが、MongoDBでは簡単に実施可能です。
これは、MongoDB自体がバイナリ1つで実行可能であるという非常にシンプルな実装になっているために可能なことであり、MongoDBの大きな強みの1つと言えるでしょう。